Navigation devices are often prone to error, especially those with light weight or low cost inertial sensors. A navigation solution (for example, position, velocity, and attitude) that is based only on low cost inertial sensors may quickly develop large errors and be unusable in a short time. Therefore, inertial measurement units (IMUs) often are combined with a secondary sensor, such as a camera, a light detection and ranging (LIDAR) sensor, a Doppler velocity sensor, or the like. The secondary sensor provides additional, redundant navigation information which can reduce errors in the navigation solution and aid the IMU. Typically, the IMU and the secondary sensor perform separately and independently. This results in high processing demands as well as the presence of uncorrected errors in the navigation solution.